import greenfoot.*;  // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)

/**
 * luigi este personaje dispara mas rapido que mario y su ataque avanza 
 * en zic zac para una mejor defensa
 */
public class Luigi extends Heroe
{
    
    private GreenfootImage[] imagen;// un arragle donde se mandan las imagenes de luigi
    
    
    public Luigi(boolean mov)//en este contructor se recibe un boolean que indica si se  mueve el personaje
    {
        super(mov);
        imagen = new GreenfootImage[10];
        imagen[0] = new GreenfootImage("luigi.png");
        imagen[1] = new GreenfootImage("luigiiz.png");
        imagen[2] = new GreenfootImage("luigiataca.png");
        imagen[3] = new GreenfootImage("luigiatacaiz.png");
        imagen[4] = new GreenfootImage("luigicam.png");
        imagen[5] = new GreenfootImage("luigicamiz.png");
        imagen[6] = new GreenfootImage("luigisalta.png");
        imagen[7] = new GreenfootImage("luigisaltaiz.png");
        
    }
     public Luigi()
    {
        super(true);
        imagen = new GreenfootImage[10];
        imagen[0] = new GreenfootImage("luigi.png");
        imagen[1] = new GreenfootImage("luigiiz.png");
        imagen[2] = new GreenfootImage("luigiataca.png");
        imagen[3] = new GreenfootImage("luigiatacaiz.png");
        imagen[4] = new GreenfootImage("luigicam.png");
        imagen[5] = new GreenfootImage("luigicamiz.png");
        imagen[6] = new GreenfootImage("luigisalta.png");
        imagen[7] = new GreenfootImage("luigisaltaiz.png");
        
    }
  
    public void act() 
    {
        World mundo=getWorld();
        if(getmover())
        {
        mover(imagen);
        if(Greenfoot.isKeyDown("space")&&getMartillo()==0)
        {   
          lanzallama();
           martincrem();
        }
        if(getMartillo()!=0)
            martincrem();
        
        if(getMartillo()==15)
            martilloreset();
       
        if(getY()==599)
            setLocation( 53, 508);
        }
        
        if(getvidas()==0)
        pierdes();
        if(checaclick())
        {
             java.util.List listama = mundo.getObjects(Mario.class);
        if(!listama.isEmpty()){
            Object obj = listama.get(0);
            Actor mario = (Actor)obj;
            (getWorld()).removeObject(mario);
        }
    }
    }    
    /**}
     * este metodo crea las llamas de luigi
     */
    public void lanzallama()
    {
        World mundo;
        mundo=super.getWorld();

        if(getdir()==2)
            setImage(imagen[2]);
        else
            setImage(imagen[3]);
        Actor llam=new Llama(getdir(),getdistmarti());
        if(getdir()==2)
        mundo.addObject(llam, getX(), getY()+10);
        else
        mundo.addObject(llam, getX(), getY()-5);
       resetcam();
    }
  
}
